云开发是什么

如果微信小程序是前端,那么后端就是 服务器/后端代码运行/云存储/数据库等,前后端配合才是一个完整的面向服务的程序。

前后端配置,上述是正常的开发的组合。但是后端涉及到很多繁琐的步骤,比如 域名申请/域名解析/后端代码部署…一系列的问题。等解决好这些问题,时间都耗费了半天了。

微信云开发,就是为了解决上述的问题。在 微信开发者工具 中就可以一键开发 数据库/云函数/云存储,方便灵活。

相应的网站说明: 云开发 。下面就着 云函数,说明一下。

云函数 hello world

  1. 新建一个 云环境,打开 _微信开发者工具_,点击 云开发 按钮。

红色箭头是 envId,后续在代码中用上。暂时先建立一个环境 test

❓环境是什么?

就是用来隔离不同 云函数/数据库/云存储的 空间。可以想象,不同的环境,就等于不同的房子;不同的房子里面虽然都有 桌子椅子,但是他们都是独立的。

  1. 新建目录,cloudfunctions ,是云函数的保存目录。在项目根目录找到 project.config.json 文件,新增 cloudfunctionRoot 字段,value 就是 cloudfunctions
1
2
3
{
"cloudfunctionRoot": "cloudfunctions/"
}

新建的目录 上要选择你要在 哪个环境 中进行开发云函数,比如下图,选择了 新建的 test 环境。

  1. 创建云函数,在 cloudfunctions 目录 右键,点击 【新建 node.js 云函数】,名字叫 add

add 目录下 增加多 3 个文件

  1. 修改 add/index.js ,全文替换成下面的代码。
1
2
3
4
5
6
7
8

// 云函数入口函数
exports.main = async (event, context) => {
// ...
return {
sum: event.a + event.b
}
}
  1. 修改 package.json, 删除 dependencies 里面的值,类似的代码如下
1
2
3
"dependencies": {

}
  1. 上传函数,变成

如果,有以下的情况

  1. index.js没有 const cloud = require('wx-server-sdk') 代码
  2. package.jsondependencies 字段 没有值

就可以 点击【上传并部署: 所有文件】菜单,比如 本例。

如果有上述的情况,就可以 点击【上传并部署: 云端安装依赖】菜单。

💡 ‘wx-server-sdk’ 的安装,是为了 云函数中可以 调用 数据库云存储。如果你在微信小程序中是直接 调用 数据库 和 云存储,就没有必要在 云函数 中倒一倒了。

  1. 调试云函数,在 开发者工具 就可以调试刚刚上传的云函数

  1. 小程序中调用 云函数 add
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
wx.cloud.init({
env: 'test-safjlfjasdfasf'
})

wx.cloud.callFunction({
// 云函数名称
name: 'add',
// 传给云函数的参数
data: {
a: 1,
b: 2,
},
success: function(res) {
console.log(res.result.sum) // 3
},
fail: console.error
})
  1. 撒花

总结

微信云开发 开发 _云函数_,可以在一个工具里面同时开发前端和后端的代码,减少繁琐的步骤,加快开发的效率。